import type { Executor } from './';

import { AuthController, ResourceController, RoleController, UserController } from './services';

export class Api {
    
    readonly authController: AuthController;
    
    readonly resourceController: ResourceController;
    
    readonly roleController: RoleController;
    
    readonly userController: UserController;
    
    constructor(executor: Executor) {
        this.authController = new AuthController(executor);
        this.resourceController = new ResourceController(executor);
        this.roleController = new RoleController(executor);
        this.userController = new UserController(executor);
    }
}